課程資訊
課程名稱
計算機程式
Computer Programming Language 
開課學期
110-2 
授課對象
機械工程學系  
授課教師
林以凡 
課號
ME2009 
課程識別碼
502E10100 
班次
03 
學分
2.0 
全/半年
半年 
必/選修
必修 
上課時間
星期四3,4,5(10:20~13:10) 
上課地點
機械系計中 
備註
本課程以英語授課。
總人數上限:55人 
 
課程簡介影片
 
核心能力關聯
核心能力與課程規劃關聯圖
課程大綱
為確保您我的權利,請尊重智慧財產權及不得非法影印
課程概述

This is an introductory course to computer programming in Python. Introduction to programming basics (what it is and how it works), binary computation, problem-solving methods and algorithm development. Includes procedural and data abstractions, program design, debugging, testing, and documentation. Covers data types, control structures, functions, parameter passing, library functions, arrays, inheritance and object oriented design. 

課程目標
The objective of this course is that by the end of the semester, you will have
• understood why Python is a useful scripting language for developers;
• learned how to design and program Python applications;
• learned how to use lists, tuples, and dictionaries in Python programs;
• learned how to identify Python object types;
• learned how to use indexing and slicing to access data in Python programs;
• defined the structure and components of a Python program;
• learned how to write loops and decision statements in Python;
• learned how to write functions and pass arguments in Python;
• learned how to build and package Python modules for reusability;
• learned how to read and write files in Python;
• learned how to design object-oriented programs with Python classes;
• learned how to use class inheritance in Python for reusability;
• learned how to use exception handling in Python applications for error handling. 
課程要求
 
預期每週課後學習時數
 
Office Hours
 
指定閱讀
 
參考書目
 
評量方式
(僅供參考)
   
課程進度
週次
日期
單元主題
Week 1
2/17  Introduction, Input, Variables, Calculations, Operators, Data Outputs 
Week 2
2/24  If Statement 
Week 3
3/3  Repetition Structures 
Week 4
3/10  Functions 
Week 5
3/17  Functions with Return and Modules 
Week 6
3/24  Files 
Week 7
3/31  Recursion and Exceptions 
Week 8
4/7  Midterm 
Week 9
4/14  Lists and Tuples 
Week 10
4/21  Strings 
Week 11
4/28  Dictionaries and Sets 
Week 12
5/5  Matplotlib, Numpy, and Turtle Graphics 
Week 13
5/12  Class 
Week 14
5/19  Inheritance, Polymorphism 
Week 15
5/26  GUI Programming 
Week 16
6/2  Final Exam